<?xml version='1.0' encoding='UTF-8' ?>
<!DOCTYPE composition PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<ui:composition xmlns="http://www.w3.org/1999/xhtml"
                xmlns:ui="http://java.sun.com/jsf/facelets"
                xmlns:p="http://primefaces.org/ui"
                template="./plantilla.xhtml"
                xmlns:h="http://java.sun.com/jsf/html"
                xmlns:f="http://java.sun.com/jsf/core">



    <ui:define name="content">
        <f:view>
            <h:form id="form">
                <h1><h:outputText value="List"/></h1>
                
                <p:dataTable value="#{crudcontroller.listaAplicaciones}" var="item" 
                    selectionMode="single" id="tablaaplicaciones" paginator="true" 
                    rows="25" selection="#{crudcontroller.aplicacionActual}"
                    rowKey="#{item.id}" rowIndexVar="index">
                    <p:ajax event="rowSelect" update=":formeditar:editarAplicacion" oncomplete="editDialog.show()" /> 
                    <p:column sortBy="#{index+1}" filterBy="#{index+1}">
                        <f:facet name="header">
                            <h:outputText value="N"/>
                        </f:facet>
                        <h:outputText value="#{index+1}"/>
                    </p:column>
                    <p:column rendered="false">
                        <f:facet name="header">
                            <h:outputText value="Id"/>
                        </f:facet>
                        <h:outputText value="#{item.id}"/>
                    </p:column>
                    <p:column sortBy="#{item.descripcion}" filterBy="#{item.descripcion}">
                        <f:facet name="header">
                            <h:outputText value="Descripción"/>
                        </f:facet>
                        <h:outputText value="#{item.descripcion}"/>
                    </p:column>
                    <p:column sortBy="#{item.fechaRegistro}" filterBy="#{item.fechaRegistro}">
                        <f:facet name="header">
                            <h:outputText value="Fecha de registro"/>
                        </f:facet>
                        <h:outputText value="#{item.fechaRegistro}">
                            <f:convertDateTime pattern="MM/dd/yyyy HH:mm:ss" />
                        </h:outputText>
                    </p:column>
                    <p:column filterBy="#{item.estado}" sortBy="#{item.estado}">
                        <f:facet name="header">
                            <h:outputText value="Estado"/>
                        </f:facet>
                        <h:outputText value="#{item.estado}"/>
                    </p:column>
                    <p:column width="32">
                        <p:commandButton action="#{crudcontroller.doBorrarAplicacion(item.id)}" 
                                         ajax="false" icon="ui-icon-trash" />
                        
                    </p:column>
                </p:dataTable>
            </h:form>
            <h:form id="formeditar">
            <p:dialog header="Editar Aplicación" widgetVar="editDialog"   
                          width="400" resizable="true" showEffect="fade" hideEffect="fade" modal="true">
                        <h1><h:outputText value="Create/Edit"/></h1>
                        <p:panelGrid columns="2" id="editarAplicacion">
                            <p:outputLabel value="Id:" for="id" />
                            <p:inputText id="id" readonly="true" value="#{crudcontroller.aplicacionActual.id}" title="Id" required="false" requiredMessage="The Id field is required."/>
                            <p:outputLabel value="Descripcion:" for="descripcion" />
                            <p:inputText id="descripcion" value="#{crudcontroller.aplicacionActual.descripcion}" title="Descripcion" />
                            <p:outputLabel value="FechaRegistro:" for="fechaRegistro" />
                            <p:calendar id="fechaRegistro" pattern="MM/dd/yyyy HH:mm:ss" showButtonPanel="true"
                                value="#{crudcontroller.aplicacionActual.fechaRegistro}" locale="es"/>
                            <p:outputLabel value="Estado:" for="estado" />
                            <p:inputText id="estado" value="#{crudcontroller.aplicacionActual.estado}" title="Estado" />
                            <p:commandButton value="Guardar" update=":form:tablaaplicaciones" oncomplete="editDialog.hide()"
                                actionListener="#{crudcontroller.doGuardarAplicacion()}"/>
                        </p:panelGrid>                    
                </p:dialog>  
            </h:form>
        </f:view>


    </ui:define>

</ui:composition>
